package com.hexacta.hrs.sandbox.metrics.service;

import java.util.List;

import com.hexacta.hrs.sandbox.metrics.model.Measurement;
import com.hexacta.hrs.sandbox.metrics.model.Metric;
import com.hexacta.hrs.sandbox.metrics.model.Project;

/**
 * Servicio general para administrar los proyectos y su contenido.
 * 
 * @author nscuri
 *
 */
public interface ProjectService {
	
	void persist(Project project);
	
	Project create(String nombre, String responsable);
	
	Project findById(Long id);
	
	public List<Project> findAll();

	Project findByProjectName(String name);

	Measurement findMeasurementById(Long id);

	List<Metric> findAllMetrics();

	Metric findByMetricName(String nameMetric);
	
	@SuppressWarnings("unchecked")
	List findByAtribute(String metricName, String projectName);

}
